Bus Contention
   HOME

TheInfoList



OR:

Bus contention is an undesirable state in
computer design In computer engineering, computer architecture is a description of the structure of a computer system made from component parts. It can sometimes be a high-level description that ignores details of the implementation. At a more detailed level, the ...
where more than one device on a
bus A bus (contracted from omnibus, with variants multibus, motorbus, autobus, etc.) is a road vehicle that carries significantly more passengers than an average car or van. It is most commonly used in public transport, but is also in use for cha ...
attempts to place values on it at the same time. Bus contention is the kind of telecommunication contention that occurs when all communicating devices communicate directly with each other through a single shared channel, and contrasted with "network contention" that occurs when communicating devices communicate indirectly with each other, through point-to-point connections through routers or bridges. Bus contention can lead to erroneous operation, excess power consumption, and, in unusual cases, permanent damage to the hardware—such as burning out a
MOSFET The metal–oxide–semiconductor field-effect transistor (MOSFET, MOS-FET, or MOS FET) is a type of field-effect transistor (FET), most commonly fabricated by the controlled oxidation of silicon. It has an insulated gate, the voltage of which d ...
. Ian Sinclair; John Dunton
"Practical Electronics Handbook"
2013. section "Three-state control". p. 208.


Description

Most bus architectures requires devices sharing a bus to follow an arbitration protocol carefully designed to make the likelihood of contention negligible.. However, when devices on the bus have logic errors, manufacturing defects, or are driven beyond their design speeds, arbitration may break down and contention may result. Contention may also arise on systems which have a programmable memory mapping when illegal values are written to the registers controlling the mapping. Most small-scale computer systems are carefully designed to avoid bus contention on the
system bus A system bus is a single computer bus that connects the major components of a computer system, combining the functions of a data bus to carry information, an address bus to determine where it should be sent or read from, and a control bus to dete ...
. They use a single device, called
bus arbiter In computing, bus mastering is a feature supported by many bus architectures that enables a device connected to the bus to initiate direct memory access (DMA) transactions. It is also referred to as first-party DMA, in contrast with third-party ...
, that controls which device is allowed to drive the bus at each instant, so bus contention never happens in normal operation. The standard solution to bus contention between memory devices, such as
EEPROM EEPROM (also called E2PROM) stands for electrically erasable programmable read-only memory and is a type of non-volatile memory used in computers, usually integrated in microcontrollers such as smart cards and remote keyless systems, or as a ...
and SRAM, is the
three-state bus A three-state bus, also known as a tri-state bus, is a computer bus connected to multiple tri-state output devices, only one of which can be enabled at any point to avoid bus contention. This scheme allows for the same bus to be shared among mult ...
with a bus arbiter. Some networks, such as
Token Ring Token Ring network IBM hermaphroditic connector with locking clip. Screen contacts are prominently visible, gold-plated signal contacts less so. Token Ring is a computer networking technology used to build local area networks. It was introduc ...
, are also designed to avoid bus contention, so bus contention never happens in normal operation. Most networks are designed with hardware robust enough to tolerate occasional bus contention on the network.
CAN bus A Controller Area Network (CAN bus) is a robust vehicle bus standard designed to allow microcontrollers and devices to communicate with each other's applications without a host computer. It is a message-based protocol, designed originally for mu ...
,
ALOHAnet ALOHAnet, also known as the ALOHA System, or simply ALOHA, was a pioneering computer networking system developed at the University of Hawaii. ALOHAnet became operational in June 1971, providing the first public demonstration of a wireless packe ...
,
Ethernet Ethernet () is a family of wired computer networking technologies commonly used in local area networks (LAN), metropolitan area networks (MAN) and wide area networks (WAN). It was commercially introduced in 1980 and first standardized in 198 ...
, etc., all experience occasional bus contention in normal operation, but use some protocol (such as
Multiple Access with Collision Avoidance Multiple Access with Collision Avoidance (MACA) is a slotted media access control protocol used in wireless LAN data transmission to avoid collisions caused by the hidden station problem and to simplify exposed station problem. The basic idea of ...
,
carrier-sense multiple access with collision detection Carrier-sense multiple access with collision detection (CSMA/CD) is a medium access control (MAC) method used most notably in early Ethernet technology for local area networking. It uses carrier-sensing to defer transmissions until no other statio ...
, or
automatic repeat request Automatic repeat request (ARQ), also known as automatic repeat query, is an error-control method for data transmission that uses acknowledgements (messages sent by the receiver indicating that it has correctly received a packet) and timeouts ...
) to minimize the times that contention occurs, and to re-send data that was corrupted in a
packet collision A collision is the situation that occurs when two or more demands are made simultaneously on equipment that can handle only one at any given instant.Source: from Federal Standard 1037C and from MIL-STD-188 It may refer to: * Collision domain, a phy ...
.


See also

*
Network on a chip A network on a chip or network-on-chip (NoC or )This article uses the convention that "NoC" is pronounced . Therefore, it uses the convention "a" for the indefinite article corresponding to NoC ("a NoC"). Other sources may pronounce it as an ...
*
Parallel communication In data transmission, parallel communication is a method of conveying multiple binary digits (bits) simultaneously using multiple conductors. This contrasts with serial communication, which conveys only a single bit at a time; this distinction i ...
*
Serial communication In telecommunication and data transmission, serial communication is the process of sending data one bit at a time, sequentially, over a communication channel or computer bus. This is in contrast to parallel communication, where several bits are ...


References

{{Computer-bus Computer buses